Image device having indicia-controlled image parsing mode

ABSTRACT

The invention relates to a system for processing image data corresponding a scene comprising an imaging device and an image reading instruction indicia. In accordance with the invention, image data corresponding to a scene comprising an image reading instruction indicia is processed in a manner that depends on features of the image reading instruction indicia. If the image reading instruction indicia is of a type whose size, scaling, orientation, and distortion can be determined, scaling, orientation, and distortion characteristics determined from the image reading instruction indicia can be used to improve the image reading process.

CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] The present application is a continuation in part of applicationSer. No. 09/953,195, filed Jan. 25, 2001, which is a continuation ofapplication Ser. No. 09/953,195, filed Oct. 17, 1997. The priorities ofthe above applications are claimed and the above applications areincorporated herein by reference. This application also claims priorityof Provisional Patent Application Serial No. 60/309,155, filed Jul. 31,2001, entitled “Imaging Device Having Indicia-Controlled Image ParsingMode.”

FIELD OF THE INVENTION

[0002] The present invention relates to imaging devices in general andin particular to imaging devices having an image parsing operating mode.

BACKGROUND OF THE INVENTION

[0003] Systems have been developed in which representations ofsignatures or other localized interest area indicia are captured withuse of an imaging device. Problems have been noted with the systemhowever. Many interest area image capture devices require specializeddocking apparatuses, for holding an indicia bearing substrate in acertain axial stand-off position angular orientation and radialorientation relative to an imaging device. In other localized interestarea image capture systems which do not require a docking apparatus thena user is required typically either to manually position an indiciabearing substrate in a certain axial stand-off position, angularorientation, and radial orientation relative to an imaging device or toposition an imaging device in a certain axial stand-off position,angular orientation, and radial orientation relative to an indiciabearing substrate.

[0004] There is a need for an interest area image capture system whichis easy to use, and does not require precise relative positioningbetween an indicia bearing substrate and an imaging device foroperation.

SUMMARY OF THE INVENTION

[0005] According to its major aspects and broadly stated the inventionis an image parsing system for execution by an imaging device in which acertain interest area of an electronically captured image, typically anarea of an image comprising a signature, is parsed and either stored ortransmitted for further processing.

[0006] The system includes an image reading instruction indiciapositioned in a field of view of an imaging device and an imaging devicespecifically adapted for use in the system. The image readinginstruction indicia may take on a variety of forms.

[0007] In accordance with a first type of image reading instructionindicia, the image reading instruction indicia comprises an parsing modecommencement indicator and at least one operation parameter indicatorwhich determines an aspect of operation of an imaging device of thesystem which reads the image reading instruction indicia. When readingan image reading instruction indicia of the first type, an imagingdevice in accordance with the invention commences operation in an imageparsing mode in which an aspect of the imaging parsing process iscontrolled by an operation parameter encoded in the image readinginstruction indicia.

[0008] In a second type of image reading instruction indicia, the imagereading instruction indicia comprises a parsing mode commencementindicator, and an identifier indicator. An image reading instructionindicia of the second embodiment is conveniently provided by an indiciaother than a bar code symbol. When reading an image reading instructionindicia of the second type, the imaging device may parse and transmitimage data of a scene comprising an image reading instruction indicia ina manner that depends on an identifier of the symbol.

[0009] In a third type of image reading instruction indicia, the imagereading instruction indicia comprises an image parsing mode commencementindicator, but does not comprise either an operation parameter indicatoror an identifier. When reading an image reading instruction indicia ofthe third embodiment, the imaging device operated in accordance with animage parsing program stored in a memory of or in communication with theimaging device. Variations of image parsing routings may be selected bythe user.

[0010] In a fourth type of image reading instruction indicia, the imagereading instruction indicia does not comprise any of a parsing modecommencement indicators, operation parameter indicator, or an identifierindicator. When reading an image reading instruction indicia of a fourthtype an imaging device of the invention does not immediately commenceoperation in an image parsing mode. However, when the imaging device islater caused by a receipt of a user initiated command to operate in animage parsing mode, in image parsing routine is executed in a mannerthat depends on at least one feature of the image reading instructionindicia of the fourth type.

[0011] Preferably, whether the image reading instruction indicia is ofthe first, second, third, or fourth types, the imaging device of theinvention, when executing an image parsing routine processed image dataof a parsed section in accordance with at least one determined “imagingcharacteristic” of the image reading instruction indicia. The at leastone imaging characteristic which may be determined from the imagereading instruction indicia include an orientation characteristic, ascaling characteristic, and a distortion characteristic of the indicia.

[0012] The image reading instruction indicia of the invention maycomprise, for example a bar code, a signature box, a string of textcharacters, a line, or a combination of the above types of markings.

[0013] These and other details, advantages and benefits of the presentinvention will become apparent from the detailed description of thepreferred embodiment hereinbelow.

BRIEF DESCRIPTION OF THE DRAWINGS

[0014] The preferred embodiment of the invention will now be described,by way of example only, with reference to the accompanying Figureswherein like members bear like reference numerals and wherein:

[0015]FIG. 1 is a schematic diagram of the system of the inventionincluding an image reading symbol and a complementarily configuredoptical device;

[0016]FIGS. 2a-2 e illustrate types of imaging devices which may beimplemented in the system of the present invention;

[0017]FIGS. 3a-3 e are block diagrams illustrating hardwarearchitectures of devices in which the invention may be incorporated.

[0018]FIG. 3f is a memory map for purposes of illustrating a feature ofthe invention.

[0019]FIG. 3g is a flow diagram illustrating operation of a main programin accordance with the invention configured to commence image datareading in an interest region in relation to an image readinginstruction indicia after reading the image reading instruction indicia;

[0020]FIG. 3h is a flow diagram illustrating a user initiated imageparsing mode according to the invention;

[0021]FIGS. 4a-4 b and 4 c show various image map representation graphsillustrating construction of a secondary bit map representation of animage data reading region;

[0022]FIG. 5 illustrates a possible embodiment of a feature of theinvention wherein image data reading parameters are provided in adecoded message of a menu symbol;

[0023]FIGS. 6a-6 g illustrate specific examples of the invention inwhich an image reading instruction indicia is provided by a symbol otherthan a bar code;

[0024]FIG. 7 illustrates an indicia identifier-parameter LUT accordingto the invention;

[0025]FIGS. 8a-8 b show a full frame image representation and parsedimage data parsed from the full frame image representation;

[0026]FIGS. 9a-9 j illustrate various implementations of the invention.

DETAILED DESCRIPTION OF THE INVENTION

[0027] A schematic diagram of the system of the invention is shown inFIG. 1. Image data reading system 2 includes an imaging device 10 suchas a bar code device and a specially configured symbol, or indicia whichshall be referred to herein as an image reading instruction indicia 6.Imaging device 10 and image reading instruction indicia 6 arecomplementarily configured so that device 10 develops image datarepresenting an interest area 8 in a manner that depends on features ofan image reading instruction indicia 6. Image reading instructionindicia 6 may take on a variety of forms.

[0028] In a first type of image reading instruction indicia, the imagereading instruction indicia includes a parsing mode commencementindicator, and at least one operative parameter indicator. The at leastone operation parameter indicator may be, for example, an indicatordecodable to generate an image reading parameter for controlling anaspect of the image data reading process such as the dimension orposition of an image data reading region. Additional operating parameterindicators may be provided to control aspects of the image captureprocess unrelated to the size and location of the image capture region.For example, image data reading parameter indicators may be provided tocontrol such aspects of the image capture process as pixel resolution,gray scale depth, and color. The image reading instruction indicia mayalso include an output control parameter indicator for controlling anaspect of outputting image data. For example, an output controlparameter may control the destination of outputted image data (i.e to adisplay device or a memory space), a data format of outputted imagedata, features of a displayed image such as orientation and/or size,compression algorithms utilized, and video preprocessing processes(gamma correction, contrast enhancement, edge peaking, etc.). An outputcontrol parameter may also control an aspect of image data processingsubsequent to decoding. For example, an output control parameter maycontrol an aspect of an OCR (optical character recognition) algorithm.

[0029] A plurality of image reading and/or image data reading indicatorstructures incorporated into an image reading instruction indicia may besubstituted for by a single identification indicator structureidentifying an identity of the image reading instruction indicia. In asecond type of image reading instruction indicia, the image readinginstruction indicia 6 includes an image parsing mode commencementindicator and an identifier. A memory space of a device configured toread such an image reading instruction indicia may have incorporatedtherein a lookup table including various image data reading and outputparameters, which are caused to be read from a memory space when thedevice reads and decodes an image reading instruction indicia includingan identifier indicator.

[0030] In a third type of image reading instruction indicia, the imagereading instruction indicia 6 comprises an image parsing modecommencement indicator, but does not comprise either an operationparameter indicator or an identifier. When reading an image readinginstruction indicia of the third type, an imaging device configured inaccordance with the invention operates in accordance with an imageparsing program stored in a memory of or in communication with theimaging device.

[0031] In a fourth type of image reading instruction indicia, the imagereading instruction indicia 6 does not comprise any of a parsing modecommencement indicator, operation parameter indicator or identifierindicator. Reading an image reading instruction indicia of the fourthtype does not result in device 10 immediately commencing operation in animage parsing mode. However, when an imaging device that has captured animage including a representation of an image reading instruction indiciaof the fourth type is caused by a receipt of a user initiated command tooperate in an image parsing mode, an image parsing routine is executedin a manner that depends on at least one feature of the image readinginstruction indicia of the fourth type. In further aspects of the imagereading instruction indicia, the image reading instruction indicia maybe of a type adapted so that a device reading the indicia can determineimaging characteristics relating to the image reading instructionindicia, such as the scaling of the indicia, an orientation of theindicia; and/or a distortion of the indicia.

[0032] Shown in the embodiment of FIG. 1 as being provided by akeyboardless optical imaging device, imaging device 10 may take on avariety of forms. For example, the invention can be incorporated in a“gun” styled optical imaging device 10, 10-2 having a handle 13 andkeyboard 13 k, as indicated in the embodiment of FIG. 2a, or a palm-heldpersonal computer, or personal data assistant (PDA) 10, 10-3 indicatedin the example of FIG. 2b. The invention can also be incorporated in awireless portable telephone 10, 10-4 as indicated by the example of FIG.2c or in a digital camera 10, 10-5 as indicated by FIG. 2d. Theinvention can also be incorporated in a keyboard-equipped opticalimaging device having the form having a finger saddle 12 shown in FIG.2e, which is a imaging device sold under the trade name DOLPHIN by HandHeld Products, Inc. of Skaneateles Falls, N.Y. All of the above imagingdevices 10-1, 10-2, 10-3, 10-4, 10-5, and 10-6 have incorporated thereinan imaging apparatus 33 which includes at least imaging optics, and animage sensing device. The above imaging devices also include anillumination assembly 21 for illuminating a target area, T. In theembodiments of FIGS. 1-2 c illumination assembly 21 typically comprisesLEDs. Illumination assembly 21 of the digital camera 10-4 of FIG. 2dtypically comprises a flash illuminator. All of the above imagingdevices 10-1, 10-2, 10-3, 10-4, 10-5, and 10-6 also comprise a hand-heldportable housing 11.

[0033] Shown as being provided by a hand held portable device, it willbe understood that the invention can be incorporated in a presentationimaging device wherein display 14 d serves to guide a user in moving atarget indicia TI in a proper position relative to imaging device 10rather than serving to guide a user in positioning imaging device 10 ina proper position relative to TI.

[0034] Block diagrams illustrating various types of electronic hardwareconfigurations for optical imaging devices in which the invention may beincorporated and communication systems comprising at least one opticalimaging device described with reference optical reader device 10 aincludes a imaging device processor assembly 30.

[0035] Imaging device processor assembly 30, includes an illuminationassembly 21 for illuminating a target area T, such as a substratebearing a 1D or 2D bar code symbol or a text string, and an imagingassembly 33 for receiving an image of object T and generating anelectrical output signal indicative of the data optically encodedtherein. Illumination assembly 21 may, for example, include anillumination source assembly 22, together with an illuminating opticsassembly 24, such as one or more lenses, diffusers, wedges, reflectorsor a combination of such elements, for directing light from light source22 in the direction of a target object T. Illumination assembly 21 maycomprise, for example., laser or light emitting diodes (LEDs) such aswhite LEDs or red LEDs. Illumination assembly 21 may include targetillumination optics 2IT for projecting an aiming pattern 27 on target T.Illumination assembly 21 may be eliminated if ambient light levels arecertain to be high enough to allow high quality images of object T to betaken. Illumination assembly 21 may also be located remote from-imagingdevice housing 11, at a location so as to eliminate or reduce specularreflections. Imaging assembly 33 may include an image sensor 32, such asa color or monochrome 1D or 2D CCD, CMOS, NMOS, PMOS, CID or CMD solidstate image sensor, together with an imaging optics assembly 34 forreceiving and focusing an image of object T onto image sensor 32.Features and advantages associated with incorporating a color imagesensor in an imaging device are discussed in greater detail in U.S. Ser.No. 09/904,697, filed Jul. 13, 2001, entitled “An Optical Reader Havinga Color Imager” incorporated herein by reference. The array-basedimaging assembly shown in FIG. 3a may be replaced by a laser array basedimaging assembly comprising one or more laser sources, a scanningmechanism, emit and receive optics, at least one photodetector andaccompanying signal processing circuitry.

[0036] Imaging device processor assembly 30 of the embodiment of FIG. 3aalso includes programmable control circuit 40 which preferably comprisesan integrated circuit microprocessor 42 and field programmable gatearray (FPGA 44). The function of FPGA 44 could also be provided byapplication specific integrated circuit (ASIC).

[0037] Processor 42 and FPGA 44 are both programmable control deviceswhich are able to receive, output and process data in accordance with astored program stored in memory unit 45 which may comprise such memoryelements as a volatile or non-volatile read/write random access memoryor RAM 46, 46-1 and an erasable read only memory or EROM 47, 47-1.Memory 45 may also include one or more long term non-volatile memorystorage devices (48, 45). For example, storage device 48, 45 may includee.g. a hard drive, or floppy disk to which data can be written to orread from. Storage device 48, 45 can be of a type that is securelyinstalled in housing 11 (e.g. a hard drive) or can be of a type that canbe removed from housing 11 and transported (e.g. floppy disk). Memory 45can include what is referred to as a “flash” memory device. Severalstandardized formats are available for such flash memory devicesincluding: “Multimedia” (MMC), “Smart Media,” “Compact Flash,” and“Memory Stick.”Although the transfers of data between processor 40 and aflash memory device normally involve “blocks” of data and not “bytes” ofdata as in standardly known non-volatile RAM device, the operation of a“flash” memory device is similar to a standardly known non-volatile RAMmemory device. Accordingly, a flash memory device can be considered tobe represented by the one or more RAM blocks 46 of FIGS. 3a-3 e. As iswell known, flash memory devices are commonly available in a form thatallows them to be removed from a first device and transported to asecond device, e.g. between device 10 and device 68. Flash memorydevices are particularly well suited for storing image data.

[0038] Processor 42 and FPGA 44 are also both connected to a common bus49-1 through which program data and working data, including addressdata, may be received and transmitted in either direction to anycircuitry that is also connected thereto. Processor 42 and FPGA 44differ from one another, however, in how they are made and how they areused.

[0039] More particularly, processor 42 is preferably a general purpose,off-the-shelf VLSI integrated circuit microprocessor which has overallcontrol of the circuitry of FIG. 2a, but which devotes most of its timeto decoding decodable image data such as symbology or text characterdata stored in RAM 46, 46-1 in accordance with program data stored inEROM 47, 47-1. FPGA 44, on the other hand, is preferably a specialpurpose VLSI integrated circuit, such as a programmable logic or gatearray, which is programmed to devote its time to functions other thandecoding image data, and thereby relieve processor 42 from the burden ofperforming these functions.

[0040] The actual division of labor between processor 42 and FPGA 44will naturally depend on the type of off-the-shelf microprocessors thatare available, the type of image sensor which is used, the rate at whichimage data is output by imaging assembly 33, etc. There is nothing inprinciple, however, that requires that any particular division of laborbe made between processors 42 and 44, or even that such a division bemade at all.

[0041] With processor architectures of the type shown in FIG. 3a, atypical division of labor between processor 42 and FPGA 44 will be asfollows. Processor 42 is preferably devoted primarily to such tasks asdecoding image data in response to trigger 13 t being activated, oncesuch data has been stored in RAM 46, 46-1, controlling the outputting ofuser perceptible data via aural output 14A, good read indicator 14 g anddisplay 14 d and, recognizing characters represented in stored imagedata according to an optical character recognition (OCR) scheme inresponse to an actuation of trigger 13 t.

[0042] FPGA 44 is preferably devoted primarily to controlling the imageacquisition process, the A/D conversion process and the storage of imagedata, including the ability to access memories 46-1 and 47-1 via a DMAchannel. FPGA 44 may also perform many timing and communicationoperations. FPGA 44 may, for example, control the illumination of LEDs22, the timing of image sensor 32 and an analog-to-digital (A/D)converter 36-1, the transmission and reception of data to and from aprocessor system external to assembly 30, through an RS232, a networksuch as an ethernet, a serial bus such as USB, a wireless communicationlink (or other) compatible I/O interface as is indicated by interface37-2. FPGA 44 may also control the outputting of user perceptible datavia an output device, such as aural output device 14 a, a good read LED14 g and/or a display monitor which may be provided by a liquid crystaldisplay such as display 14 d. Control of output, display and I/Ofunctions may also be shared between processors 42 and 44, as suggestedby bus driver I/O interface 37-3 or duplicated, as suggested bymicroprocessor serial I/O interface 37-1 and interface 37-2. Asexplained earlier, the specifics of this division of labor is of nosignificance to the present invention. The imaging device described withreference to FIG. 3a can be adapted for use in connection with theinvention by providing a display, e.g. display 68 d that is external tohand-held housing 11, but is in communication with control circuit 40.

[0043]FIG. 3b shows a block diagram exemplary of an optical imagingdevice which is adapted to easily receive user-input controlinstructions resulting in a change in an operating program of a imagingdevice. In addition to having the elements of single state imagingdevice circuit of FIG. 3a, imaging device 10 b includes a keyboard 13 kfor inputting data including instructional data and a display 14 d fordisplaying text and/or graphical information to an operator. Keyboard 13k may be connected to bus 48-1, FPGA 44 or to processor 42 as indicatedin FIG. 2b. Display 14 d may be connected to FPGA 44, to processor 42 orto system bus 48-1 as is indicated in the particular embodiment of FIG.3b.

[0044] An operator operating optical imaging device 10 b can reprogramimaging device 10 b in a variety of different ways. In one method forreprogramming imaging device 10 b, an operator actuates a control buttonof keyboard 13 k which has been pre-configured to result in thereprogramming of imaging device 10 b. In another method forreprogramming imaging device 10 b an operator actuates control of aprocessor system not integral with imaging device 10 b to transmit aninstruction to reprogram imaging device 10 b. According to anothermethod for reprogramming imaging device 10 b, an operator moves imagingdevice 10 b so that a “menu symbol” is in the field of view of imagesensor 32 and then activates trigger 13 t of imaging device 10 b tocapture an image representation of the menu symbol. A menu symbol is aspecially designed bar code symbol which, when read by an appropriatelyconfigured optical imaging device results in a imaging device beingprogrammed. The reprogramming of an optical imaging device with use of amenu symbol is described in detail in commonly assigned U.S. Pat. No.5,965,863 incorporated herein by reference. Because the second and thirdof the above methodologies do not require actuation of a imaging devicecontrol button of keyboard 13 k but nevertheless result in a imagingdevice being reprogrammed, it is seen that imaging device 10 may bekeyboardless but nevertheless reprogrammable. It will be seen that thesecond or third of the above methodologies can be adapted for selectingoperating modes described herein.

[0045] A typical software architecture for an application operatingprogram typically executed by an optical imaging device as shown in FIG.3b is shown in FIG. 3f depicting a memory map of a program stored inprogram memory 47-1. Application operating program 60 adapts a imagingdevice for a particular application. Three major applications orfunctions for an optical imaging device imaging device having imagecapture capability are: (1) comprehensive decoding; (2) data transfer;and (3) signature capture. In a comprehensive decoding application,imaging device 10 may preliminarily analyze and then decode a messagecorresponding to a bar code symbol or OCR decodable text character. In adata transfer application, imaging device 10 uploads character textfiles or image files to a processor system located externally relativeto imaging device housing 11. In a signature capture application,imaging device 10 may capture an image corresponding to a scene having asignature, parse out from the image data that image data correspondingto a signature, and transmit the captured signature data to anotherprocessing system. It is seen that the third of such applications can becarried out by an optical imaging device imaging device that is not anoptical imaging device decoder equipped with decoding capability.Numerous other application operating programs are, of course possible,including a specialized D decoding application, a specialized 2D barcode decoding algorithm, a specialized OCR decoding application whichoperates to decode OCR decodable text characters, but not bar codesymbols. A user of a imaging device configured in accordance with theinvention accesses a mode selector menu driver as exemplified by theembodiment of shown in FIG. 1a when a decoding function of the imagingdevice is actuated.

[0046] Referring now to specific aspects of the software architecture ofan operating program 60, program 60 includes an instruction section 62,and a parameter section 64. Further, instruction section 62 may includeselectable routine section 62 s. Instructions of instruction section 62control the overall flow of operations of imaging device 10. Someinstructions of instruction section 62 reference a parameter from aparameter table of parameter section 64. An instruction of instructionsection 62 may state in pseudocode, for example, “set illumination tolevel determined by [value in parameter row x].” When executing such aninstruction of instruction section 62, control circuit 40 may read thevalue of parameter row 64 x. An instruction of instruction section 62may also cause to be executed a selectable routine, that is selecteddepending on the status of a parameter value of parameter section 64.For example, if the application program is a bar code decoding algorithmthen an instruction of instruction section 62 may state in pseudocode,for example, “launch Maxicode decoding if Maxicode parameter ofparameter row 64 y is set to “on”. When executing such an instruction,control circuit 40 polls the contents of row 64 y of parameter section64 to determine whether to execute the routine called for by theinstruction. If the parameter value indicates that the selectableroutine is activated, control circuit 40, executes the appropriateinstructions of routine instruction section 62 s to execute theinstruction routine.

[0047] It is seen, therefore, that the above described softwarearchitecture facilitates simplified reprogramming of imaging device 10.Imaging device 10 can be reprogrammed simply by changing a parameter ofparameter section 64 of program 60, without changing the subroutineinstruction section 62 s or any other code of the instruction section 62simply by changing a parameter of parameter section 64. The parameter ofa parameter value of section 62 can be changed by appropriate usercontrol entered via keyboard 13 k, by reading a menu symbol configuredto result in a change in parameter section 64, or by downloading a newparameter value or table via a processor system other than system 40 asshown in FIGS. 3a and 3 b. The reprogramming of imaging device 10 b canof course also be accomplished by downloading an entire operatingprogram including sections 62 and 64 from a processor system other thana system as shown in FIGS. 3a and 3 b.

[0048] Another architecture typical of an optical imaging device whichmay be configured in accordance with the invention is shown in FIG. 3c.Imaging device 10 c comprises a control circuit 40 having a processorsystem 40 s 1, and an integrated host processor system 40 s 2 whichincludes host processor 40 hp and an associated memory 45-2. “Hostprocessor system” herein shall refer to any processor system whichstores a imaging device application operating program for transmissioninto a processor system controlling operation of a imaging deviceimaging system 33 or which exercises supervisory control over aprocessor system controlling operation of a imaging device imagingsystem 33, or which stores in its associated memory more than oneapplication operating program that is immediately executable onreception of a command of a user. In a imaging device having twoprocessors such as processor 42 and processor 40 hp, processor 42 istypically dedicated to processing image data to decode decodableindicia, whereas processor 40 hp is devoted to instructing processor 42to execute decoding operations, receiving inputs from trigger 13 t andkeyboard 13 k, coordinating display and other types of output by outputdevices 14 d, 149, and 14 a and controlling transmissions of databetween various processor systems.

[0049] In architectures shown in FIG. 3c having dedicated decodingprocessor system 40 s 1 and a powerful, supervisory host processorsystem 40 s 2, host processor system 40 s 2 commonly has stored thereonan operating system, such as DOS WINDOWS or WINDOWS, or an operatingsystem specially tailored for portable devices such as, WINDOWS CEavailable from Microsoft, Inc. In the case that host processor system 40s 2 includes an operating system such as DOS or WINDOWS CE, theinstruction section and parameter section of the operating programcontrolling the operation of host processor system 40 s 2 normally areprogrammed in a high level programming language and assembled by anassembler before being stored in memory 47-2 and therefore may notreside in consecutive address locations as suggested by program 60 shownin FIG. 3f. Nevertheless, host processor system 40 s 2 having anoperating system integrated thereon can readily assemble an operatingprogram into such a form for loading into an external processor systemthat does not have an operating system stored thereon.

[0050] Referring to further aspects of imaging devices 10 a, 10 b, and10 c at least one I/O interface e.g. interface 37-1, 37-2, and 37-3facilitates local “wired” digital communication such as RS-232,ethernet, serial bus including Universal Serial Bus (USB), or localwireless communication technology including “Blue Tooth” communicationtechnology. At least one I/O interface, e.g. interface 37-3, meanwhile,facilitates digital communication with remote processor assembly 88-1 inone of an available remote communication technologies including dial-up,ISDN, DSL, cellular or other RF, and cable. Remote processor assembly88-1 may be part of a network 88N of processor systems as suggested byassemblies 88-2, 88-3, and 88-4 links 88L and hub 88H e.g. a personalcomputer or main frame computer connected to a network, or a computerthat is in communication with imaging device 10 c only and is not partof a network. The network 88N to which assembly 88-1 belongs may be partof the internet. Further, assembly 88-1 may be a server of the networkand may incorporate web pages for viewing by the remaining processorassemblies of the network. In addition to being in communication withimaging device 10 c, assembly 88-1 may be in communication with aplurality of additional imaging devices 10′ and 10″. Imaging device 10 cmay be part of a local area network (LAN). Imaging device 10 maycommunicate with system 88-1 via an I/O interface associated with system88-1 or via an I/O interface 88I of network 88N such as a bridge orrouter. Further, a processor system external to processor system 40 suchas processor system 70 s may be included in the communication linkbetween imaging device 10 and assembly 88-1. While the components ofimaging devices 10 a, 10 b, and 10 c are represented in FIGS. 3a-3 c asdiscreet elements it is understood that integration technologies havemade it possible to form numerous circuit components on a singleintegrated circuit chip. For example, with present fabricationtechnologies, it is common to form components such as components 42, 40,46-1, 47-1, 37-2, and 37-1 on a single piece of silicone.

[0051] Furthermore, the number of processors of imaging device 10 isnormally of no fundamental significance to the present invention. Infact if processor 42 is made fast enough and powerful enough specialpurpose FPGA processor 44 can be eliminated. Likewise, referring toimaging device 10 c, a single fast and powerful processor can beprovided to carry out all of the functions contemplated by processors 40hp, 42, and 44 as is indicated by the architecture of imaging device 10e of FIG. 3e. Still further, it is understood that if imaging device 10includes multiple processors the processors may communicate via paralleldata transfers rather than via the serial communication protocolindicated by serial buses 49-1 and 49-2. In addition, there is norequirement of a one-to-one correspondence between processors andmemory. Processors 42 and 40 hp shown in FIG. 3c could share the samememory, e.g. memory 45-1. A single memory e.g. memory 45-1 may servicemultiple processors e.g. processor 42 and processor 40 hp.

[0052] Referring to the embodiment of FIG. 3d, it is seen that it is notnecessary that the entirety of electrical components of an opticalimaging device 10 be incorporated in a portable device housing 11. Theelectrical components-of imaging device 10 d are spread out over morethan one circuit board that are incorporated into separate devicehousings 11 and 71. It is understood that circuitry could be spread outinto additional housings. Control circuit 40 in the embodiment of FIG.3d is incorporated entirely in the housing 71 that is non-integral withportable device housing 11. Housing 71 is shown as being provided by apersonal computer housing, but could also be provided by another type ofhousing such as a cash register housing, a transaction terminal housingor a housing of another portable device such as housing 11. At least oneoperating program for controlling imaging assembly 33 and for processingimage signals generated from imaging assembly 33 is stored in EROM 47-1located within PC housing 71. For facilitating processing of signalsgenerated from imaging assembly 33 by a processor system that is notintegrated into portable housing 11 a high speed data communication linkshould be established between imaging assembly 33 and processor system40. In the embodiment of FIG. 3d, I/O interfaces 37-4 and 37-5 andcommunication link 39 may be configured to operate according to the USBdata communication protocol. The configuration shown in FIG. 3d reducesthe cost, weight, and size requirements of the portable components ofimaging device 10 d, which in imaging device 10-4 are the componentshoused within portable housing 11. Because the configuration of FIG. 3dresults in fewer components being incorporated in the portable section11 of imaging device 10 d that are susceptible to damage, theconfiguration enhances the durability of the portable section of imagingdevice 10-4 delimited by housing 11.

[0053] The control circuit 40 as shown in the embodiment of FIG. 3d canbe in communication with more than one “shell” processorless imagingdevice comprising a imaging device housing and a imaging devicecircuitry shown by the circuitry within dashed housing border 11 of FIG.3d. In the case that a control circuit as shown in FIG. 3d services many“shell” imaging devices or processor-equipped imaging devicesinput/output port 37-5 should be equipped with multiplexingfunctionality to service the required data communications betweenseveral imaging devices and/or shell imaging devices and a singleprocessor system.

[0054] The imaging device communication system of FIG. 3e has a physicallayout identical to imaging device 10 d, but is optimized for adifferent operation. System 67 is a communication system in whichimaging device processor system 40 communicates with a nonintegratedlocal host processor assembly 68 provided by a personal computer 68having a PC housing 71, a processor system 70 s, a storage device 75(e.g hard drive or flash disk), a keyboard 68 k, a mouse 68 m, and adisplay 68 d. Provided that link 67L is a high speed communication link,nonintegrated local host processor system 70 s could be programmed toprovide functioning identical to processor system 40 s of imaging device10 d. However, because imaging device 10 e comprises an integratedprocessor system. 40 such programming is normally unnecessary, althoughas described in copending application Ser. No. 09/385,597, incorporatedby reference herein it is useful to configure processor system 40communication with a host processor system e.g. 70 s so that certaincomponents of imaging device 10 such as trigger 13 t can be controlledremotely by host processor system 70 s, which in one embodiment isnonintegrated. Accordingly, in imaging device-host communication systemsas shown in FIG. 3e nonintegrated host processor assembly 68 typicallyis programmed to provide functions separate from those of the imagingdevice processor systems described in connection with FIGS. 3a-3 d.

[0055] As described in U.S. Pat. No. 5,965,863, incorporated herein byreference, one function typically provided by nonintegrated local hostprocessor system 70 s is to create operating programs for downloadinginto imaging device 10. Processor system 70 s typically has an operatingsystem incorporated therein, such as WINDOWS, which enables an operatorto develop operating programs using a graphical user interface, whichmay be operated with use of a pointer controller 68 m. Nonintegratedlocal processor system 70 s also can be configured to receive messagesan/or image data from more than one imaging device, possibly in akeyboard wedge configuration as described in U.S. Pat. No. 6,161,760,incorporated herein by reference. It is also convenient to employprocessor system 70 for data processing. For example a spreadsheetprogram can be incorporated in system 70 s which is useful for analyzingdata messages from imaging device 10 e. An image processing applicationcan be loaded into system 70 s which is useful for editing, storing, orviewing electronic images received from imaging device 10 e. It is alsoconvenient to configure imaging device 10 e to coordinate communicationof data to and from a remote processor assembly such as assembly 88-1.Accordingly processor assembly 68 typically includes I/O interface 74-2which facilitates remote communication with a remote processor assembly,e.g. assembly 88-1 as shown in FIG. 3c.

[0056]FIG. 3g shows a flow diagram illustrating operation of one type ofimaging device configured in accordance with the invention. The specificexample of FIG. 3g applies to the specific case where imaging device 10is adapted for bar code decoding and image reading instruction indicia 6is provided by a standardly available bar code. Steps 105-120 and steps145-170 apply generally to one type of standardly known imaging devicein which steps of the invention may be implemented, while steps 121through 125 are steps that apply specifically to the indicia-controlledimage parsing system of the invention. The flow diagram of FIG. 3gillustrates a common implementation of the invention. In the example ofFIG. 3g, it is illustrated that an image data parsing mode of operationmay be commenced while imaging device 10 is operating in a standard barcode decoding mode of operation. By the example of FIG. 39, it isillustrated that the normal course of a decoding messages encoded by barcodes can be interrupted by the reading of an image reading instructionindicia 6 of the first, second, or third types. As explained previously,image reading instruction indicia 6 of the first second and third typeshave parsing mode commencement indicators which when recognized by acomplementarily programmed imaging device results in the imaging deviceoperating in an image parsing mode. Thus, when recognizing a parsingmode commencement indicator during the course of decoding bar codes,imaging device 10 captures an image of a scene and parses an interestarea from the image representation, as will be explained herein.

[0057] It will be understood, however, that an image parsing mode inaccordance with the invention can be commenced while imaging device 110is operating in a mode other than a bar code decoding mode. Of coursedevice can be operating, in for example, an OCR decoding mode, or acombined bar code and OCR decoding mode of operation. In addition,device 10 can be operating in a mode other than a bar code or OCRdecoding mode when an image parsing mode is commenced. In one embodimentof the invention, that is explained more fully in connection with FIG.3h device 10 is caused to execute an image parsing mode by receipt of auser input command which is typically input via keyboard 13 k.Importantly, it will be understood that an image parsing mode of theinvention can be executed using image representations other thanrecently captured image representations. An image parsing mode can beexecuted using an image representation stored in memory 45 that had beencaptured, a substantial time prior to commencement of an image parsingmode. It should be understood that the operating program described withreference to FIG. 3g herein is provided only to show, by way of example,a type of bar code decoding operating program which may be modified inaccordance with the invention and should not be taken as limiting of thevarying types of decoding programs which may be modified in accordancewith the invention.

[0058] Referring to the general operational steps of the decodingoperation program indicated by the flow diagram of FIG. 3g, the bar codedecoding operation program begins with block 105 which causes the deviceto wait in a low power state until a device trigger is pulled. When thetrigger is pulled, control circuit 40 is directed to block 110 whichcauses it to power up and initialize the device hardware. Controlcircuit 40 is then directed to blocks 115 and 116 which cause it todefine the image data memory space that will be used and to initializethe device with the default values of various operating parametersgoverning various aspects of the operation of the device.

[0059] Examples of such operating parameters may include, for example,the frame rate of the image sensor, the codes that will be enabledduring decoding, the I/O communication protocols, beeper pitch orvolume, among others. The default values of these parameters correspondto a combination of parameters which are suitable for use under mostoperating conditions. Additional operating parameters may controlspecialized functions if the device shown such as a multiple symboldecoding function (block 143) or a repeat until done function (block147).

[0060] After the device has been initialized, in block 116, controlcircuit 40 proceeds to blocks 117 and 118, which call for controlcircuit 40 to capture and attempt to decode an image of a target barcode. The term “capturing” herein shall generally refer to the processwherein control circuit 40 stores an image map representation of a sceneinto memory 45. The term “reading” shall refer generally to transfers ofdata involving memory stored image data subsequent to an image map beingstored into memory 45.

[0061] If a decoding is not successful (that is, if the control circuitis unable to determine the bar code type or information encoded in themessage) then control circuit 40 is directed to block 117 and captures anext frame unless the imaging device has been previously programmed notto repeat image capture (block 142) or receives a command to ceasecapturing images (135, 140).

[0062] If control circuit 40 is successful in decoding the bar code(block 120), then the control circuit 40 will be able to determine ifthe bar code is an image reading instruction indicia in accordance withthe invention. Block 122 illustrates an operation step in the program ofthe invention in the case that an image reading instruction indiciaincludes data reading indicators indicating the dimension of the imagecapture region, or “interest region” and the position in relation to theindicia of the image capture region.

[0063] If the control circuit 40 at block 121 determines that theindicia is an image reading instruction indicia and that, therefore, theimaging device is to commence an image parsing mode of applicationaccording to the invention then control circuit 40 proceeds to block 122and reads image reading parameters from the indicia which in the caseshown pertain to the dimension and relative position of the interestregion of the image. In a simplified embodiment, such as may be the caseif the image reading instruction indicia is provided in a 1D bar codethen control circuit 40 at this point may be caused to parse image datafrom an image map based only on the dimension and relative position dataread from the image reading instruction indicia. In one simplifiedembodiment of the invention, the dimension and relative positionindicators read from the image reading instruction indicia correspond topixel values. That is, dimension parameter indicators of the indicia mayindicate the number of pixels of image data to read in the x and ydimensions of the pixel array, and the relative position indicatorparameter may indicate a pixel distance between the center of an imagereading parameter and the center of an image data reading region. Inthis simplified embodiment, an output image data step according to theinvention (block 125) would comprise reading and outputting image datafrom an original image map representation of an image captured at block125. However, such a simplified embodiment of the invention is normallysignificantly useful only in the case where an imaging device ispositioned in a fixed position, orientation and distance form an imagereading instruction indicia 6.

[0064] In a highly useful and versatile embodiment of the invention, thedimension and relative position indicators of the image readinginstruction indicia indicate the actual dimension and relative distance,in distance units, of an image data reading region, and the device isconfigured to read interest region image data at a specific location inreference to an indicia 6 regardless the orientation of device 10 orindicia-to-device distance during reading.

[0065]FIG. 4a shows an image map corresponding to a scene including acaptured image reading instruction indicia representation 6R capturedwith a device positioned at an unknown angle, and at an unknown distancewith respect to an indicia. The indicia representation 6R in the exampleshown corresponds to the first type of image reading instruction indiciadescribed and includes, along with a parsing mode commencementindicator, image reading operation parameter indicators indicating thedimension and relative position of an image data reading region, inactual distance units. After reading at block 122 the dimension andrelative position indicators determined from the decoded symbol (decodedat block 118, the imaging device may determine from the image map imagedata, scaling characteristics, orientation characteristics, anddistances characteristics for the captured image reading instructionsymbol (block 123). A scaling factor for the captured indiciarepresentation 6R can be determined, in general, by taking into accountthe number of modules captured, the type of bar code to determine theactual size of the modules which are normally of a standard size, andthe number pixels representing the captured image. The indiciarepresentation 6R may also include a data message corresponding to theactual size of the indicia. The orientation of the indiciarepresentation 6R can be determined based on a method which may varydepending on the indicia type. In several styles of indicia, at leasttwo indicia edges include distinguishing indicia so that the relativeposition of the edges and orientation of the symbol can be determined.In the Aztec bar code shown, corners of central bulls eye structurecomprise specialized indicia (orientation patterns) for indicating theorientation of the symbol. Distortion characteristics of capturedindicia 6R may be determined, for example, by taking account therelative position of corner points A, B, C, and D of the capturedsymbol. In many applications, data pertaining to the scale, orientation,and/or distortion characteristics of captured indicia 6R may bepreviously determined by controller 40 at block 118 when controller 40attempts to decode the indicia. In the case that such data has beenpreviously determined, it would of course be unnecessary to determinethe data again from the bit map representation. Instead, if scaling,orientation or distortion data has been previously determined therequired data at block 122 can be determined by reading the data from amemory space of device 10.

[0066] The substrate on which an indicia 6 may be formed may be providedby, for example, a sheet of paper, an object, or a body part. The sceneregion(s) desired to be captured and processed need not be located onthe same substrate as indicia 6.

[0067] It will be recognized that it is useful to select image readinginstruction indicia 6 have predetermined geometries allowing scaling,orientation, and distortion characteristics to be determined forvirtually any symbology selected for use as an image reading instructionsymbol. Features of the Aztec symbology shown the various specificexamples of the invention discussed herein are described in detail inU.S. Pat. No. 5,591,956 issued to the assignee of the present invention,and incorporated by reference herein. Aztec 2D bar code symbols are wellsuited for use as image reading instruction indicia of system 2 becausedistortion and scaling characteristics for Aztec bar codes are readilydetermined, and, as will be described in connection with FIGS. 4b and 4c, a distortion “imaging” characteristic of Aztec symbol can readily bedetermined based on the rectangular finder pattern or bullseye of suchsymbols. In an Aztec bar code, data fields, or bytes are read inconcentric rings about a center bullseye to generate a data messagehaving the standardly known bar code data message form shown in the datamessage map of FIG. 5. FIG. 5 is provided to highlight advantages ofusing a standardly known bar code as an image reading instructionindicia 6 in a system 2 according to the invention. The dark to lightmarkings of a bar code can be encoded to constitute indicators of animage reading indicia according to the invention, which are readilydecoded by control circuit 40 into a form readily processable by controlcircuit 40.

[0068] As is indicated by the data message map of FIG. 5, a first datafield 310 may include a character or characters which when read bydevice 10, result in the device commencing an image parsing mode ofoperation according with the invention. A second data field 312 mayindicate an operating parameter image reading parameter such as pixelresolution of a constructed secondary image map representation of animage reading region. A third field 314 may indicate another imagereading operating parameter such as image depth. For example, the number0 encoded in field 314 may indicate a binary image depth, while thenumber 3 encoded in field 314 may indicate an 8 bit gray scale. Fourthand fifth data fields 316 may comprise operating parameters indicatingthe relative position of the center of the data reading region to thecenter of the image reading instruction symbol. For example, field 318may indicate a signed distance in the x dimension between the center ofthe symbol and the center of the image reading region, while field 320may indicate a signed distance in the y dimension between the center ofthe symbol and the center of the image reading region. Sixth and seventhfields 322 may indicate the dimension of the image data reading region.For example, field 324 may indicate a height of an image data readingregion, while field 326 may indicate a width of an image data readingregion. Further data fields may be provided to indicate additional imagedata reading parameters or image data output parameters.

[0069] When the scale and orientation of the captured image readinginstruction indicia are determined, imaging device 10 may determine, atblock 123 the boundaries of an image data reading or “interest” regionof the captured image representation utilizing the dimension andrelative position parameter of the image data region read from theindicia 6, and the scaling factor and orientation factors determined forthe indicia as explained herein.

[0070] A method for developing image data of an interest region in thecase that image distortion is corrected for is described with referenceto the image map image representation of FIGS. 4b and 4 c. FIGS. 4b and4 c illustrate an interpolated grid line distortion correction method inwhich a distortion characteristic of an indicia representation 6R isdetermined. The image data reading or interest region 8R determined inthe example provided for the image map representation of FIGS. 4b and 4c is required by the image data reading parameters of captured indiciarepresentation 6R to be above indicia representation 6R and of the sameorientation as indicia representation 6R. However, it will be recognizedthat an interest region 8R may be of any orientation, size, or shapewith respect to indicia representation 6R, and may include pixel valuesrepresenting all or part of indicia representation 6R. In the exampleprovided, interest region 8R is defined by a dimension parameterincluding a height parameter and a width parameter, and a relativeposition parameter indicating the position of the center of the imagedata reading or interest region 8R relative to the center of indiciarepresentation 6R.

[0071] In order to calculate the pixel location of corner point Qdefining a boundary of the data reading region, an infinite imaginarygrid line 210 is established through top corner points A and B for theindicia representation 6R, and infinite imaginary grid line 212 isestablished between bottom corner point D and C for the symbol.Temporary points G and H are then determined along imaginary grid lines210 and 212 respectively, based on the scale of the symbol, the widthdimension of interest region 8R, and the relative position indicator ofthe image reading region, and infinite imaginary grid line 216 isestablished between the temporary points G and H a second grid line 218can be established following the same method. First corner mark Q forthe interest region 8R can then be established along imaginary grid line216 based on the relative position indicator for the image readingregion and the height dimension of the image reading region. Remainingboundary points R, S, T for the image reading region are determinedutilizing the same method.

[0072] When boundary points Q, R, S, and T for interest region 8R aredetermined (block 123), a secondary image map representative of indiciain an interest area corresponding to region 8R is constructed (block124). Construction of a secondary image map image representative of aninterest area is described with reference specifically to FIG. 4c. Therequired resolution of the secondary image map image can be encoded inan image data reading parameter of the image reading instruction symbol,or else may be encoded in the operating program of the device. Inconstructing the secondary image map image, equally spaced points 220 inthe number of the resolution in the y dimension are plotted along lineQ-T, and along line R-S. Imaginary pixel locator lines such as grid line222 are then interpolated between opposing points, for example, points224 and 226). For determining pixel locator lines in the y dimension,equally spaced points in the number of the required resolution in the xdimension are plotted along lines Q-S, and lines T-S, and y dimensionpixel locator grid lines are interpolated between opposing points on theQ-R and T-S lines. When the imaginary pixel locator grid lines areestablished, a grid is formed comprising a plurality of intersectingimaginary pixel locator lines. Each point of intersection 228 of thepixel locator lines corresponds to a pixel of the constructed secondaryimage map. The value of each individual pixel in the secondary bit mapimage is interpolated according to one of several well known methodsutilizing the pixel values from the original bit map representation ofthe captured image bordering the location of the intersecting lines. Itis seen that a secondary image map interest region representation ofmarkings, e.g. signature markings, e.g. corresponding to an interestarea can be constructed so that the secondary image map betterrepresents the actual size and appearance of the markings, than would beprovided by an interest region image representation generated withoutconstruction of a secondary image map.

[0073] In accordance with further aspects of the invention, imagingdevice 10 can be configured with a feedback function which provides anindicia to a user in the event control circuit at block 123 determinesthat the device needs to be moved into another position in order for thedevice to capture an image representation of scene that includes aninterest region of the size, shape and position required. For example,if the most recently captured image map representation of a scene doesnot include pixels required to represent the interest region, thencontrol circuit 40 may issue a command to a component such as output 14a or output 14 d of device 10 which emits a tone or other understandableindicator such as a display graphic or text instructions to a user tomove the device away from the target in order to expand the device'sfield of view. Control circuit 40 can be configured to emit audible orvisual indicators that correspond to the direction (x, y, or z axis) inwhich the device should be moved in order to capture an image ofsufficient characteristics to include interest region 8R.

[0074] After the captured image of the interest region is output atblock 125, controller 40 proceeds to block 146 and outputs the encodedmessage of remaining data encoded in indicia 6, if any. Image readinginstruction indicia 6 may include an encoded message or else may includeno encoded message other than a data corresponding to parsing modecommencement and operation parameter indicators and may be provided onlyto cause and possibly control aspects of an image data read inaccordance with the invention.

[0075] If at block 121, the control circuit 40 determines that anindicia in the field of view of device 10 is not an image readinginstruction indicia then control circuit 40 proceeds to block 145 and,in accordance with the specific device operating program shown, maydetermine whether the indicia is a menu symbol bar code. A device inwhich the invention may be incorporated may include a menuing featurewhereby aspects of device control can be altered by reading specializedmenu bar code. Menu symbol bar codes include a special flag whichindicates to the device that the indicia being read is a menu bar code.In the case that a menu bar code is read, controller 40 proceeds toblock 160 and executes a menu routine. Menu bar codes are described indetail in an issued patent entitled “Optical Devices Having ImprovedMenuing Features,” identified by U.S. Pat. No. 5,975,736, andincorporated by reference herein. As described in that reference, menusymbol bar codes can be used to configure or reconfigure imaging device10 by establishing or changing operating parameters of device 10 withoutuse of a keyboard. In the alternative, as indicated by FIGS. 2a-2 f, animaging device for use with the invention can be configured orreconfigured by, for example, entering appropriate commands via keyboard13 k or keyboard in communication with control circuit such as keyboard68 k.

[0076] In the specific embodiments illustrated thus far, image readinginstruction indicia 6 is provided by a standardly known bar code symbol.Using a standardly known bar code symbol as an image reading instructionindicia provides a variety of advantages. Most notably, imaging devicesare commonly equipped with the capacity to read and decode messagesencoded in standardly known bar code symbols. Accordingly, using astandardly known bar code symbol enables the image parsing operationsrequired of the invention to be provided with minimal modification of astandardly known device. Further, by using standardly known bar codes,complex and lengthy parsing mode operating instructions, in the form ofdata processing and output parameters can be incorporated and encodeddirectly in an image reading instruction indicia 6.

[0077] However, in certain applications it may be undesirable to utilizea standardly known bar code symbol, e.g. indicia 6-1, as an imagereading instruction indicia of system 2. In certain applications,utilizing a bar code symbol as an image reading instruction symbol maybe considered aesthetically undesirable. Accordingly in certainapplications, it may be desirable to utilize decodable or recognizablesymbols other than standardly known bar code symbols as image readinginstruction symbols of image reading system 2. Embodiments which employrecognizable symbols other than standardly known bar code symbols asimage reading instruction indicia according to the invention aredescribed with reference to FIGS. 6a-6 g.

[0078] In the embodiment of FIG. 6a, it is seen that image readinginstruction indicia 6 can be provided by a simple box 6, 6-2. In theembodiment of FIG. 6a, device 10 is configured to recognize signaturebox 6, 6-2 as an image reading instruction symbol of the first, second,or third type described herein. Accordingly, device 10 when reading andrecognizing box 6, 6-2 commences operation in an image capture mode andprocessor to parse out image data from an interest region of a capturedimage corresponding to an interest area 8-1 of a real image comprisingindicia 6-2. The interest region corresponding to a signature box imagereading instruction indicia is conveniently configured to extend beyondthe boundaries of the box image representation to encompass portions ofa signature, such as portion 610 extending beyond the boundaries of 6-2box.

[0079] It may advantageous to add graphical features to signature box6-2 to render it more easily recognized by device 10 and possibly renderit more easily distinguishable from other image reading instructionindicia comprising signature boxes. The embodiments of FIGS. 6b and 6 cillustrate that logos can be added to instruction indicia comprisingsignature boxes to render signature boxes distinguishable from oneanother. Signature box 6, 6-3 comprises a logo of a first style whilebox 6, 6-4 comprises a logo of a second style so that device 10 can bereadily configured to distinguish between the styles and can readilydetermine orientation of the signature box. According to another methodfor providing boxes so that they may be distinguished from one anotherand so that an orientation of a signature box can readily be determined,bar space pattern can be encoded in the lines of a box as is indicatedby bar space pattern of box 612. It will be seen that signature boxes,e.g. 6-2, 6-3 and 6-4 could readily be substituted for by signaturelines. However, as will be explained further herein image distortion cannormally more accurately be corrected for in images comprising signaturebox image reading instruction indicia than signature line image readinginstruction indicia.

[0080] By image reading instruction indicia 6-5 of FIG. 6d it is seenthat an image reading instruction indicia of the invention can beprovided by a signature box in combination with a text string. By imagereading indicia 6, 6-6 of FIG. 6e it is seen that an image readinginstruction indicia can be provided by a text string only without anassociated signature box or line. When an image reading instructionindicia includes a text string, e.g. indicia 6-5 or 6-6 device 10 mayrecognize the text string as an image reading instruction indicia byrecognition of graphical features of the indicia or by recognition of adecoded OCR message decoded from the text string. That is, device 10 maybe configured so that decoding of the-text message “sign here” mayresult in an image parsing mode being commenced.

[0081]FIGS. 6f and 6 g are image representations illustrating distortioncorrection methods in the case that an image reading instruction indicia6 of the invention comprises a symbol other than a standardly known barcode. FIG. 6f illustrates an image representation corresponding to imagereading instruction indicia 6-4 shown in FIG. 6c while FIG. 6gillustrates an image representation corresponding to image readinginstruction indicia 6-6 shown in FIG. 6e. The image representation ofFIG. 6f includes indicia representation 6R-4 corresponding to indicia6-4 while the image representation of FIG. 6g includes indiciarepresentation 6R-6 corresponding to indicia 6-6.

[0082] Distortion correction in the case indicia 6 comprises a symbolother than a bar code symbol can proceed in the manner of theinterpolated grid line distortion correction method described withreference to FIGS. 4b and 4 c. Grid lines 210 and 212 in the embodimentof FIGS. 4b and 4 c can be established in the in the manner of gridlines 210 210 in the embodiment of FIGS. 4b and 4 c while boundary gridlines 216 and 218 can be established in the manner of grid lines 216 and218 of FIGS. 4b and 4 c. Similarly, grid lines 210 and 214 in theembodiment of FIG. 6g can be established in the manner of grid lines 210and 212 on the embodiment of FIGS. 4b and 4 c while boundary grid lines216 and 218 can be established in the manner of grid lines 216 and 218of FIGS. 4b and 4 c. For establishing of distortion correction gridlines, image reading indicia 6 should have sufficient graphicalinformation so that either a pair of substantially parallel orsubstantially perpendicular grid lines could be established based ongraphical features of the indicia in a zero distortion imagerepresentation corresponding to the image reading instruction indicia.In the example of FIG. 6f grid lines are based on corner points ofsignature box 6-4. In the example of FIG. 6g grid lines 210 and 212 arebased on corner points of the characters “I” and “E” respectively.

[0083] Operating parameters cannot be encoded in non-standardly knownbar code image reading instruction indicia, e.g. indicia 6-2, 6-3, 6-4,6-5 and 6-6 as easily as in bar code image reading indicia, e.g. indicia6-1. Accordingly, if it desired to have indicia dependant image parsingmodes, image reading instruction indicia 6 provided by symbols otherthan standardly known bar code symbols can be configured in accordancewith the image reading instruction indicia of the second type describedherein. When reading image reading instruction indicia of the secondtype, device 10 may execute an image parsing mode of operation inaccordance with operating parameters that are called up from a lookuptable (LUT).

[0084] The partial contents of a LUT 710 for controlling operation of adevice operating in an image parsing mode of operation in a manner thatdepends on an identifier of an image reading indicia is shown in FIG. 7.Control circuit 40 calls up operating parameters from LUT 710 inaccordance with an identifier of indicia 6. Column 712 of LUT 710 listsseveral styles of non-bar code image reading instruction indicia asdescribed in connection with FIGS. 6a-6 g. LUT 710 further comprises adifferent row of operating parameters for each style of indicia. Anidentifier for a particular style of indicia may be any feature of theindicia that distinguishes it from another indicia. Operating parametersmay be image reading parameters, e.g. parameters from column 714 whichdetermine the manner in which image data is processed from a startingimage representation and image output parameters, e.g. parameters fromcolumn 716, which determine the manner in which a parsed interest regionimage representation is output.

[0085] In the embodiment described in connection with FIG. 3a, an imageparsing mode of operation is commenced during the course of operating abar code decoding mode. Reading of an image reading instruction indicia6 of the first, second, or third type during the course of operating ina decoding mode herein causes automatic branching of device 10 into animage parsing mode.

[0086] However, under certain circumstances, it may be desirable tocommence an image parsing mode of operation in response to an actionother than reading an image reading instruction indicia having a parsingmode commencement indicator. The fourth type of image readinginstruction indicia described herein does not include an image parsingcommencement indicator. When executing an image parsing mode inassociated with an image reading instruction indicia of the fourth type,device 10 processes image data in a manner that depends on features ofindicia 6. However, the command to commence the image parsing process isprovided by an act other that the reading of a parsing mode commencementindicator of an instruction indicia 6. For example, device may commencean image parsing instruction mode in response to a user initial commandinitiated via a user interface such as keyboard 13 k or keyboard 68 k.

[0087] A flow diagram illustrating operation of an imaging deviceoperating in an image parsing mode in association with an image readinginstruction indicia of the fourth type is shown in FIG. 3b. The loopdesignated by decision block 810 indicates that a user initiated imageparsing mode will not be executed until control circuit 40 receives auser initiated instruction to execute an image parsing routine. A usermay initiate an image parsing mode at block 810 by entering anappropriate command, for example, via keyboard 13 k integral with device10 or another control, device in communication with imaging device 10,such as a keyboard 13 k or mouse 13 m of nonintegrated local hostprocessor system assembly 68.

[0088] In general, when used to decode bar codes, control circuit 40 ispreferably configured to store into a buffer memory location, for eachdecoded bar code, the decoded message for the bar code, imagingcharacteristics for the bar code, and the complete image representationthat includes a representation of the decoded bar code.

[0089] Therefore, in accordance with one embodiment of an image parsingmode, control circuit 40 at block 812 may retrieve from a buffer memorylocation, e.g. memory 45 imaging characteristics pertaining to the lastdecoded bar code. For decoding a bar code, control circuit 40 will oftendetermine such imaging characteristics for a bar code including forexample a scaling characteristic, an orientation characteristic or adistortion characteristic for the bar code. These characteristics insome circumstances can be expressed in terms of a numerical quantity. Inother circumstances they may be expressed in terms of graphical data.For example, a distortion characteristic for the bar code imagerepresentation shown in FIGS. 4b and 4 c is expressed in terms of a setof distortion correction grid lines.

[0090] At block 814 control circuit 40 applies the imagingcharacteristics for the decoded bar code retrieved at block 812 to parseinterest region image data from the last image representationcorresponding to a decoded message. The interest region size andrelative location is determined prior to the time the imagerepresentation acted on in block 814 is captured. However, controlcircuit 40 at block 812 preferably scales image data of an interestregion, orients image data of an interests region and corrects fordistortion of an interest region in accordance with imagingcharacteristics (retrieved at block 812) determined for bar coderepresentation contained within the image acted on at block 814.

[0091] As indicated, the archived image representation subjected toparsing at block 814 and the imaging characteristics utilized at block814 are conveniently determined from the mode recently captured imagerepresentation captured by device 10. This data is routinely stored inbuffer memory locations. However, control circuit 40 at block 812 mayparse image data from an image representation other than the mostrecently captured image captured by control circuit 40. For example,control circuit 40 may upload several frames of captured image data to anonintegrated local host processor system provided by a personalcomputer as is indicated by the communication system 67 shown in FIG.3e, which has been previously programmed to catalog frames of imagedata. A user may then initiate control via keyboard of 68 k and mouse 68m of host processor assembly 68 to “flip” through several frames ofimage data as displayed on monitor 68 d. The image parsing mode may becarried out by host processor system 70 s on a frame selects by a userusing host processor system 70 s.

[0092] Image reading indicia of the fourth type described herein used inconnection with the user initiated image parsing mode, may be of anystyle described herein, e.g. bar code, box, box+logo, line, text stringetc. However, when indicia 6 is of the fourth type for use inconjunction with a user-initiated image parsing mode, image readinginstruction indicia 6 is preferably provided by a bar code symbol. Thereason for this preference is that imaging device 10, as part of itsnormal operation in decoding a bar codes has already determined imagingcharacteristics for the decoded code at the time a user-initiatedinstruction to commence an imaging parsing mode as received at block810. Therefore, at block 812 of the user uninitiated image capture modedescribed with reference to FIG. 3b, control circuit 40 does not have todetermine imaging characteristics for a graphical indicia of anew.Although control circuit 40 could of course be programmed to calculateimaging characteristics for an image reading instruction indicia anew atblock 812, control circuit 40 at block 812 preferably merely reads suchdata from a last frame buffer memory location associated with controlcircuit 40. Utilizing a bar code as an image reading instruction indicia6 also allows more information to be encoded in the bar code. If animage reading instruction indicia of the first type is provided by alinear bar code, for example, a substantial amount of the informationstorage capacity for the linear bar code must be devoted to encodingimage parsing mode operation parameters. If the linear bar code is animage reading indicia of a fourth type which controls image parsing onlyto the extent control circuit determines imaging characteristics for theindicia in the location of the indicia, then all of the informationstoring capacity of linear bar code can be devoted to storinginformation other than information which controls the image parsingprocess. With reference further to the flow diagram of FIG. 3b, controlcircuit 40 at block 816 outputs a parsed interest region image region.As explained with reference to FIGS. 4b and 4 c, the parsed image datamay comprise interpolated pixel values interpolated by a grid linedistortion correction method. The parsed image data may also comprise asubset of original pixel values of a full frame of image data capturedby control circuit 40. The outputting of parsed image may comprise, forexample, the storage of parsed image data into memory 45 for later use,or the uploading of parsed image data to a nonintegrated host processorassembly such as processor assembly 68 or processor assembly 88-1.Parsed image data is often attached to other information. For example,in a scene having a decodable bar code and an image reading indiciaprovided by the bar code, it is common to associate the parsed imagedata from the scene with a decode message from the bar code.

[0093] An example illustrating the results obtaining by operation of animage parsing mode according to the invention is described withreference to FIGS. 8a and 8 b. FIG. 8a illustrates a full frame of imagedata 810 captured by control circuit 40, while FIG. 8b illustratedparsed interest region image data 8R corresponding to an interest region8R of full frame 810. It is seen that control circuit 40 in outputtingparsed image data corresponding to a signature changes the orientationand scaling of the image data of interest region 8R, and corrected fordistortion of image data in interest region 8R. Image readinginstruction indicia representation 6R and 6R-7 in the image shown inFIG. 8a may correspond to an image reading instruction indicia of thefirst, second, third, or fourth type described herein.

[0094] Specific examples of the invention showing scenes having imagereading instruction indicia and interest areas correlated with outputinterest region parsed image data corresponding to the interest area(s)of the scenes are described with reference to FIGS. 9a-9 j. Importantly,interest areas of scenes can comprise markings other than signatures.Further, there is often more than one interest area 8 for a given imagereading instruction indicia 6.

[0095] In the example of FIGS. 9a and 9 b, wherein FIG. 9a illustrates ascene comprising shipping label 910 and wherein FIG. 9b illustratesparsed interest region image data parsed from an image representation oflabel 910, image reading instruction indicia 6, 6-8 comprises a PDF barcode symbol, and there are three interest areas corresponding to indicia6-8. First interest area 8 and 8-2 comprise a marking indicating thenumber of items shipped, second interest area 8 and 8-2 comprise amarking indicating a job number, third interest 8 and 8-1 comprise asignature field while fourth interest area 8 and 8-4 comprisehandwritten characters. FIG. 9b illustrates an example of an outputformat for outputting parsed image data from an image representationcorresponding to label. First interest region 8R and 8R-2 is parsedimage data corresponding to first interest area 8 and 8-2, secondinterest region 8R and 8-3 is parsed image data corresponding tointerest area 8 and 83, third interest region 8R and 8R-1 is parsedimage data corresponding to interest area 8 and 8-1 while fourthinterest region 8R and 8R-4 comprise parsed image data corresponding tointerest area 8 and 8-4.

[0096] Further examples illustrating the invention are described withreference to FIGS. 9c-9 j. With reference to the example of FIGS. 9c and9 d, FIG. 9c illustrates a scene 920 comprising an image readinginstruction indicia 6 and 6-1 and interest area 8 and 8-1 while FIG. 9dillustrated parsed image data illustrated in an image data parsed froman image representation of scene 920. Interest region 8R and 8-1 of FIG.9d comprises parsed image data corresponding to interest area 8 and 8-1of scene 920.

[0097]FIGS. 9e-9 h illustrate the invention applied as to fingerprintparsing applications. FIG. 9e shows a scene 930 having an image readinginstruction indicia 6 and 6-1 and a fingerprint 932 withing interestarea 8-5, while FIG. 9f illustrates parsed image data parsed from animage representation corresponding to scene 930. Parsed image data shownin FIG. 9f comprises interest region image data 8R and 8R-5corresponding to interest area 8-5 of scene 932. The embodiment of FIGS.9e and 9 f illustrate that an interest area 8 of a scene can include animage reading instruction indicia 6.

[0098]FIGS. 9g and 9 h illustrate another embodiment of the invention asapplied to a fingerprint parsing application. FIG. 9g shows a scene 940having an image reading instruction indicia 6 and 6-6 and an interestarea 8 and 8-6, while FIG. 9h illustrates parsed image data parsed froman image representation corresponding to scene 940. In the embodiment ofFIGS. 9g and 9 h image reading instruction indicia 6-6 is provided by astring of text characters, and the interests region 8R and 8R-6 ofparsed image data corresponds to interest area 8-6 includes afingerprint representation but does not include a representation of anypart of the image reading indicia 6-6.

[0099]FIGS. 9i and 9 j illustrate the invention as applied in a lotterygame ticket reading application. FIG. 9i illustrates a scene comprisinga lottery game ticket 950 carrying an image reading instruction indicia6 and 6-1 and having interest areas 8-7 a, 8-7 b, 8-7 c and 8-7 d, whileFIG. 9j shows parsed image data parsed from an image representationcorresponding to ticket 950. In a possible output format, controlcircuit 40 outputs parsed image data in the format shown by FIG. 9j. Inthe parsed image data of FIG. 9j, interest region 8R-7 a corresponds tointerest area 8-7 a, interest region 8R-7 b corresponds to interest area8-7 b interest region 8R-7 c corresponds to interest area 8-7 c andinterest region 8R-7 d corresponds to interest area 8-7 d of the scenecomprising lottery game ticket 950. In the example of FIG. 9i, imagereading instruction indicia 6-1 is provided by a bar code. However, itwill be understood that control circuit 40 could be configured torecognize other graphical features of lottery game ticket 950 and animage reading instruction indicia according to the invention. Forexample, control circuit 40 could be configured to recognize thecombination of graphic line segments 952, 953, and 954 as an imagereading indicia 6 according to the invention, and could further beconfigured to correct for distortion while parsing image data from animage representation of ticket 950 by establishing distortion correctiongrid lines based on perpendicularly oriented line segments 952 and 953.

[0100] An important advantage of the present invention in certainembodiments is that developed interest region image representation canbe output to actual size, to a proper orientation, and with distortionof the captured image corrected, regardless of the distance,orientation, or angle of a device to an image reading instructionindicia formed in accordance with the invention, and regardless theposition of the indicia 6 in relation to a scene desired to be subjectedto image capture and image parsing.

[0101] While the present invention has been described with reference toa number of specific embodiments in order to set forth the best modethereof, it will be understood that the sprit and scope of the presentinvention should be determined with reference to the following claims.

What is claimed is:
 1. A system for processing an image representationof a scene, said system comprising: an image reading instruction indiciadisposed in said scene; and an imaging device for capturing said imagerepresentation, said imaging device having a control circuit adapted to:capture an image representation of said scene including said imagereading instruction indicia; determine at least one of a scalingcharacteristic, orientation characteristic or distortion characteristicof a region of said image representation representing said image readinginstruction indicia; and parse image data from said image representationusing at least one of said determined scaling, orientation, ordistortion characteristics.
 2. The system of claim 1, wherein said imagereading indicia comprises a signature box.
 3. The system of claim 1,wherein said image reading indicia comprises a signature box couple witha logo.
 4. The system of claim 1, wherein said image reading instructionindicia comprises a signature box coupled with a string of textcharacters.
 5. The system of claim 1, wherein said image reading
 5. Thesystem of claim 1, wherein said image reading instruction indiciacomprises a string of text characters.
 6. The system the claim 1,wherein said image reading instruction indicia comprising an imageparsing mode commencement indicator, which when read by said controlcircuit causes said device to operate in an image parsing mode.
 7. Thesystem of claim 1, wherein said control circuit determines a distortioncharacteristic for said image representation region corresponding tosaid image reading instruction indicia by a process including the stepof establishing grid lines based on graphical features of said imagereading instruction indicia.
 8. The system of claim 1, wherein saidcontrol circuit determines a distortion characteristic for said imagerepresentation region corresponding to said image reading instructionindicia by a process including the step of establishing grid lines basedon graphical features of said image reading instruction indicia, andwherein said image reading instruction indicia includes graphicalfeatures sufficient to enable said control circuit to establish a pairof grid lines that are essentially parallel to one another oressentially perpendicular to one another when said image representationis essentially distortion free.
 9. The system of claim 8, wherein saidimage reading instruction indicia includes a signature box, and whereinsaid control circuit establishes distortion correction grid line basedon said image representation region corresponding to corners of saidsignature box.
 10. The system of claim 8, wherein said image readinginstruction indicia includes a string of text characters, and whereinsaid control circuit establishes distortion correction grid lines basedon graphical features of said image representation region correspondingto at least one specific character within said string of textcharacters.
 11. A method for processing image data using an imagingdevice having bar code decoding capability, said method comprising thesteps of: capturing an image representation of a scene that includes abar code; determining at least one imaging characteristic for said barcode; storing said image representation and data corresponding to saidat least one imaging characteristic in respective buffer memorylocations; receiving a command from a user to initiate an image parsingmode; and while in said image parsing mode, retrieving from said buffermemory locations said image representation and said data correspondingto at least one imaging characteristic; and using said datacorresponding to said at least one imaging characteristic in parsingimage data from said image representation.
 12. The method of claim 11,wherein said at least one imaging characteristic is a scalingcharacteristic.
 13. The method of claim 11, wherein said at least oneimaging characteristic is an orientation characteristic.
 14. The methodof claim 11, wherein said at least one imaging characteristic is adistortion characteristic.
 15. The method of claim 11, wherein saidimage parsing mode is executed using nonintegrated processor assembly incommunication with said device.
 16. The method of claim 11, wherein saidimage parsing mode is initiated via a keyboard of said imaging device.17. The method of claim 11, wherein said image parsing mode is initialedvia a keyboard or mouse of a nonintegrated processor assembly incommunication with said device.
 18. The method of claim 11, wherein saidbar code symbol is of a type that does not comprise an image parsingmode commencement indicator.
 19. The method of claim 11, wherein in saidimage parsing mode, image data is developed corresponding to more thanone interest region of said image representation.
 20. The method ofclaim 11, wherein said storing step includes the step of storingdistortion correction grid line data based on said bar coderepresentation, and wherein said retrieving step includes the step ofretrieving said distortion correction grid line data.